/*****************************************************************************/
/*                        >>> func_ipc.h-- <<<                               */
/*	Trabajo Practico 2do. cuatrimestre 2011                                  */
/*	TP:"FUSELAJE"                                                            */
/*	GRUPO: Reduce Fat Fast                                                   */
/*	INTEGRANTES: Emanuel Genovese                                            */
/*               Federico Gabriel Garcia                                     */
/*               Federico Pioli                                              */
/*               Esther Insfrain                                             */
/*               Luciano Bagattin                                            */
/*	Fecha UM:                                                                */
/*****************************************************************************/
/*****************************************************************************/
/*		        	INCLUDES					                                 */
/*****************************************************************************/
#include "structs_commons.h"
#include "log.h"

/*****************************************************************************/
/*		        	HEADERS					                                 */
/*****************************************************************************/
char* fGenerar_Desc_ID(void);

int fMandarIPCXsocket(int iSocket, stNIPC st, t_log *);
int fRecibirIPCXsocket(int, stNIPC *st, t_log *);

int fcmpDescriptor(char*, char*);

t_stream * stPEscrituraSector_serializer(void *sT);

void stPEscrituraSector_deserializer(t_stream * p, stPEscrituraSector **m);
t_stream * stREscrituraSector_serializer(void *sT);
t_stream * stPosCabezal_serializer(void *sT);
void stPosCabezal_deserializer(t_stream * p, vecTrace **m);
void stREscrituraSector_deserializer(t_stream * p, stREscrituraSector **m);
t_stream * stRLecturaSector_serializer(void *sT);
void stRLecturaSector_deserializer(t_stream * p, stRLecturaSector **m);
t_stream * stPLecturaSector_serializer(void *pedido);

void stPLecturaSector_deserializer(t_stream * tOrigen, int ** iPunResultado);
t_stream * stTrace_serializer(void * sT);
void stTrace_deserializer(t_stream * q, void *r);

t_stream * stNIPC_serializer(stNIPC *St, void * a,
		t_stream *(*serializer)(void*));
void stNIPC_deserializer(t_stream *st, stNIPC *stIPC);

